package services.robot.common

import collection.mutable.Buffer

abstract class SiteNode(override val url: String, val title: String) extends SiteUnit(url) {
  private var _categories: Buffer[SiteNode] = null

  def categories: Buffer[SiteNode] = {
    if (_categories == null)
      _categories = getCategories
    _categories
  }

  protected def getCategories: Buffer[SiteNode]

  def getProductsPage(pageNumber: Int): ProductsPage
}
